home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / a_man / cat7 / plp.z / plp
Encoding:
Text File  |  2002-10-03  |  15.4 KB  |  468 lines

  1.  
  2.  
  3.  
  4. PPPPLLLLPPPP((((7777))))                                                                  PPPPLLLLPPPP((((7777))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      plp - parallel line printer interface
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      ####iiiinnnncccclllluuuuddddeeee <<<<ssssyyyyssss////ppppllllpppp....hhhh>>>>
  13.      ////ddddeeeevvvv////ppppllllpppp
  14.      ////ddddeeeevvvv////ppppllllppppbbbbiiii
  15.  
  16. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  17.      The special file /_d_e_v/_p_l_p refers to the parallel printer interface on the
  18.      Indigo, Indy, Indigo2, Challenge/Onyx, O2, OCTANE, Origin200 and Onyx2
  19.      products. Special file /_d_e_v/_p_l_p_b_i is also available on the Indigo, Indy
  20.      and Indigo2 platforms and is used to access the parallel printer
  21.      interface in bidirectional access mode.
  22.  
  23.      The plp device supports output to a Centronics-compatible printer
  24.      connected to the builtin parallel printer port.  Normally, /_d_e_v/_p_l_p is
  25.      directly accessed only by a print spooling mechanism such as the llllpppp((((1111))))
  26.      subsystem.  Multiple processes may open the device, but these processes
  27.      must synchronize writes to prevent intermingled data.  Processes may open
  28.      the device read-only to obtain printer status.  The special file
  29.      /_d_e_v/_p_l_p_b_i may be open for reading and writing by one process at a time.
  30.      A printer reset is automatically issued only once at system startup.
  31.  
  32.      Different platforms support different operation modes and features as
  33.      described below.
  34.  
  35.      The plp devices on the O2 are IEEE 1284-II compliant and supports all
  36.      three IEEE 1284-II interfaces:  Compatibility(Centronics), bidirectional
  37.      Enhanced Parallel Port(EPP), and bidirectional Extended Capabilities
  38.      Port(ECP).  Bidirectional Centronics mode is not supported. Compatibility
  39.      (Centronics) mode is actually available as two different types:  PIO or
  40.      FIFO mode. FIFO Compatibility mode is a faster Centronics mode which uses
  41.      DMA access. PIO Compatibility mode uses standard PIO access (no DMA). PIO
  42.      Compatibility mode has been found to be more compatible with some types
  43.      of printers and should be used only if problems occur in FIFO
  44.      Compatibility mode.  The O2 plp driver also has the capability to perform
  45.      auto-negotiation with printers (peripherals) to set up the proper
  46.      protocol. This auto-negotiation mode, or any other supported mode, can be
  47.      specified through ////vvvvaaaarrrr////ssssyyyyssssggggeeeennnn////mmmmaaaasssstttteeeerrrr....dddd////eeeeccccppppllllpppp to override the default mode
  48.      (Compatibility FIFO mode).
  49.  
  50.      The plp devices on the OCTANE, Origin200, and Onyx2 are IEEE 1284-II
  51.      compliant devices. However only Compatibility(Centronics) and Extended
  52.      Capabilities Port(ECP) output mode are supported. Bidirectional
  53.      Centronics, bidirectional ECP, EPP and auto-negotiation mode are not
  54.      supported.  As with the O2 platform, Compatibility mode is available as
  55.      either FIFO or PIO Compatibility mode.  The default operation mode
  56.      (Compatibility FIFO mode) can be changed through
  57.      ////vvvvaaaarrrr////ssssyyyyssssggggeeeennnn////mmmmaaaasssstttteeeerrrr....dddd////eeeeccccppppppppllllpppp.
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. PPPPLLLLPPPP((((7777))))                                                                  PPPPLLLLPPPP((((7777))))
  71.  
  72.  
  73.  
  74.      The Indigo, Indigo2, and Indy support only Centronics and bidirectional
  75.      Centronics interfaces.
  76.  
  77.      The following ioctls are defined in the include file <_s_y_s/_p_l_p._h> and may
  78.      be used to control the device:
  79.  
  80.      PPPPLLLLPPPPIIIIOOOOCCCCRRRREEEESSSSEEEETTTT    Asserts the reset signal to the printer.
  81.  
  82.      PPPPLLLLPPPPIIIIOOOOCCCCSSSSTTTTRRRROOOOBBBBEEEE   Sets the duration and duty cycle of the data strobe
  83.                     output. A macro is provided, PLP_STROBE, which converts
  84.                     strobe length to the argument format.  See <_s_y_s/_p_l_p._h>.
  85.                     Does not apply to O2, OCTANE, Origin200, and Onyx2.
  86.  
  87.      PPPPLLLLPPPPIIIIOOOOCCCCEEEESSSSTTTTRRRROOOOBBBBEEEE  Sets the set-up, pulse, and hold times of the data strobe
  88.                     output. A macro is provided, PLP_ESTROBE, which converts
  89.                     strobe length to the argument format.  See <_s_y_s/_p_l_p._h>.
  90.                     Challenge/Onyx L/XL only.
  91.  
  92.      PPPPLLLLPPPPIIIIOOOOCCCCIIIIGGGGNNNNAAAACCCCKKKK   Argument of 1 causes the acknowledge input from the
  93.                     interface to be ignored.  Argument of 0 reenables the
  94.                     acknowledge input.  Challenge/Onyx, R4k-Indigo only.
  95.  
  96.      PPPPLLLLPPPPIIIIOOOOCCCCWWWWTTTTOOOO      Set write timeout value, the length of time a write
  97.                     command will wait before timing out, in seconds (default
  98.                     is 0 seconds which indicates infinite timeout).
  99.  
  100.      PPPPLLLLPPPPIIIIOOOOCCCCRRRRTTTTOOOO      Set read timeout value, the length of time a read command
  101.                     will wait before timing out, in seconds.  (default is 0
  102.                     seconds which indicates infinite timeout).
  103.  
  104.      PPPPLLLLPPPPIIIIOOOOCCCCRRRREEEEAAAADDDD     Enables the reads from the port (bidirectional mode). For
  105.                     all Indy and Indigo2 products PLPIOMODE ioctl is a
  106.                     prerequisite. Should only be set once at the time the
  107.                     device is opened. Use the following code to set it (it
  108.                     remains set until the port is closed).
  109.  
  110.                             ....
  111.                         if (ioctl (scanner, PLPIOCREAD, 1) < 0) {
  112.                             close (scanner);
  113.                             return -1;
  114.                         }
  115.                             ....
  116.  
  117.                     For the O2 product, PLPIOCREAD ioctl is valid only in ECP
  118.                     or EPP mode.
  119.  
  120.                     For OCTANE, Origin200, and Onyx2, this ioctl is not
  121.                     supported.
  122.  
  123.      PPPPLLLLPPPPIIIIOOOOMMMMOOOODDDDEEEE      This ioctl changes the operation mode of the driver. It
  124.                     should be used only immediately after opening the device.
  125.                     On Indy, Indigo and Indigo2 platforms, this ioctl sets
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. PPPPLLLLPPPP((((7777))))                                                                  PPPPLLLLPPPP((((7777))))
  137.  
  138.  
  139.  
  140.                     bidirectional Centronics mode. On O2, OCTANE, Origin200,
  141.                     and Onyx2 products, this ioctl sets the operation mode to
  142.                     any supported mode.  Only operation modes supported on the
  143.                     platforrm are valid. For example, on Octane, Origin200,
  144.                     and Onyx2, only PLP_PIO, PLP_ECP and PLP_COMP are valid.
  145.                     Use the following code to set it:
  146.  
  147.                             ....
  148.                           if (ioctl (scanner, PLPIOMODE, PLP_BI) < 0) {
  149.                             close (scanner);
  150.                             return -1;
  151.                           }
  152.                             ....
  153.                     Does not apply to Challenge/Onyx.
  154.  
  155.      PPPPLLLLPPPPIIIIOOOOCCCCSSSSTTTTAAAATTTTUUUUSSSS   This ioctl returns the printer status as an integer bit-
  156.                     mask based on constants defined in <_s_y_s/_p_l_p._h>.  The
  157.                     constants are described below:
  158.  
  159.                             FAULT   Printer is in fault state
  160.                             EOI             End of Ink (Ribbon out)
  161.                             EOP             End of Paper
  162.                             ONLINE  Printer is on line
  163.  
  164.                     Not all printers/platforms support all of these status
  165.                     indications.
  166.  
  167. FFFFIIIILLLLEEEESSSS
  168.      /dev/plp, /dev/plpbi, /var/sysgen/master.d/ecplp,
  169.      /var/sysgen/master.d/ecpplp
  170.  
  171. NNNNOOOOTTTTEEEE
  172.      On O2, OCTANE, Origin200 and Onyx2 /dev/plp[n] are linked to
  173.      /hw/parallel/plp[n].  On driver unregistration and subsequent re-
  174.      registration, the /hw/parallel entries may no longer exist. Rerun
  175.      ioconfig(1) to get the entries set up again.
  176.  
  177. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  178.      lp(1), pfd(7m)
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. PPPPLLLLPPPP((((7777))))                                                                  PPPPLLLLPPPP((((7777))))
  203.  
  204.  
  205.  
  206. EEEELLLLEEEECCCCTTTTRRRRIIIICCCCAAAALLLL IIIINNNNTTTTEEEERRRRFFFFAAAACCCCEEEE
  207.      IEEE 1284-A 25-pin subminiature D-shell (standard DB-25) connector at the
  208.      host or the peripheral end.
  209.  
  210.                     IIIIEEEEEEEEEEEE 1111222288884444----AAAA 22225555----PPPPIIIINNNN PPPPAAAARRRRAAAALLLLLLLLEEEELLLL PPPPOOOORRRRTTTT CCCCOOOONNNNNNNNEEEECCCCTTTTOOOORRRR
  211.               ______________________________________________________
  212.  
  213.                PIN     SIGNAL     DESCRIPTION
  214.               ______________________________________________________
  215.  
  216.                 1      nStrobe    Strobe Data
  217.                 2       Data1     Data Bit 0
  218.                 3       Data2     Data Bit 1
  219.                 4       Data3     Data Bit 2
  220.                 5       Data4     Data Bit 3
  221.                 6       Data5     Data Bit 4
  222.                 7       Data6     Data Bit 5
  223.                 8       Data7     Data Bit 6
  224.                 9       Data8     Data Bit 7
  225.                10       nAck      Acknowledge
  226.                11       Busy      Peripheral Busy
  227.                12      PError     Page Error
  228.                13      Select     Peripheral Online
  229.                14      nAutoFd    Automatic Line Feed (or PR/SC)
  230.                15      nFault     Peripheral Fault
  231.                16       nInit     Peripheral Reset
  232.                17     nSelectIn   Turn Peripheral Online (or No Ink)
  233.               18-25      Gnd      Signal Ground
  234.                     ||||||||||||||||||||||
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.                                 ||||||||||||||||||||||
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274.  
  275.  
  276.      IEEE 1284-B 36-pin (normal Centronics) connector at the peripheral end.
  277.  
  278.                     IIIIEEEEEEEEEEEE 1111222288884444----BBBB 33336666----PPPPIIIINNNN PPPPAAAARRRRAAAALLLLLLLLEEEELLLL PPPPOOOORRRRTTTT CCCCOOOONNNNNNNNEEEECCCCTTTTOOOORRRR
  279.                 ___________________________________________________
  280.  
  281.                  PIN     SIGNAL     DESCRIPTION
  282.                 ___________________________________________________
  283.  
  284.                   1      nStrobe    Strobe Data
  285.                   2       Data1     Data Bit 0
  286.                   3       Data2     Data Bit 1
  287.                   4       Data3     Data Bit 2
  288.                   5       Data4     Data Bit 3
  289.                   6       Data5     Data Bit 4
  290.                   7       Data6     Data Bit 5
  291.                   8       Data7     Data Bit 6
  292.                   9       Data8     Data Bit 7
  293.                  10       nAck      Acknowledge
  294.                  11       Busy      Peripheral Busy
  295.                  12      PError     Page Error
  296.                  13      Select     Peripheral Online
  297.                  14      nAutoFd    Automatic Line Feed (or PR/SC)
  298.                  15         -       Not Defined (or No Paper)
  299.                       |||||||||||||||||||
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.                                   |||||||||||||||||||
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.                                                                         PPPPaaaaggggeeee 4444
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345. PPPPLLLLPPPP((((7777))))                                                                  PPPPLLLLPPPP((((7777))))
  346.  
  347.  
  348.  
  349.                  16        Gnd      Logic Ground
  350.                  17        Gnd      Chassis Ground (or No Ink)
  351.                  18      PrnHigh    Peripheral Logic High (or N.C.)
  352.                 19-30      Gnd      Signal Ground
  353.                  31       nInit     Peripheral Reset
  354.                  32      nFault     Peripheral Fault
  355.                 33-35       -       Not Defined
  356.                  36     nSelectIn   Turn Peripheral Online
  357.                       ||||||||
  358.  
  359.  
  360.  
  361.  
  362.  
  363.                                   ||||||||
  364.  
  365.  
  366.  
  367.  
  368.  
  369.  
  370.  
  371.      IEEE 1284-C 36-pin miniature connector at the host or the peripheral end.
  372.  
  373.                     IIIIEEEEEEEEEEEE 1111222288884444----CCCC 33336666----PPPPIIIINNNN PPPPAAAARRRRAAAALLLLLLLLEEEELLLL PPPPOOOORRRRTTTT CCCCOOOONNNNNNNNEEEECCCCTTTTOOOORRRR
  374.                     __________________________________________
  375.  
  376.                      PIN     SIGNAL     DESCRIPTION
  377.                     __________________________________________
  378.  
  379.                       1       Busy      Peripheral Busy
  380.                       2      Select     Peripheral Online
  381.                       3       nAck      Acknowledge
  382.                       4      nFault     Peripheral Fault
  383.                       5      PError     Page Error
  384.                       6       Data1     Data Bit 0
  385.                       7       Data2     Data Bit 1
  386.                       8       Data3     Data Bit 2
  387.                       9       Data4     Data Bit 3
  388.                      10       Data5     Data Bit 4
  389.                      11       Data6     Data Bit 5
  390.                      12       Data7     Data Bit 6
  391.                      13       Data8     Data Bit 7
  392.                      14       nInit     Peripheral Reset
  393.                      15      nStrobe    Strobe Data
  394.                      16     nSelectIn   Turn Peripheral Online
  395.                      17      nAutoFd    Automatic Line Feed
  396.                      18     HostHigh    Host Logic High
  397.                     19-35      Gnd      Signal Ground
  398.                      36      PrnHigh    Peripheral Logic High
  399.                           ||||||||||||||||||||||||
  400.  
  401.  
  402.  
  403.  
  404.  
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.  
  421.                                       ||||||||||||||||||||||||
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.                                                                         PPPPaaaaggggeeee 5555
  462.  
  463.  
  464.  
  465.